package com.gsm.service;

import com.gsm.entity.Result;
import com.gsm.entity.SysUser;
import com.gsm.po.Subject;

import java.util.List;

/**
 * 科目(Subject)表服务接口
 *
 * @author wjq
 * @since 2020-11-27 00:42:53
 */
public interface SubjectService {
    /**
     * 新增数据
     *
     * @param subject 实例对象
     * @param u
     */
    Result insertSubject(Subject subject, SysUser u);

    /**
     * 通过主键删除数据
     *
     * @param subjectId 主键
     * @param u
     */
    Result deleteSubjectBySubjectId(Long subjectId, SysUser u);

    /**
     * 修改数据
     *
     * @param subject 实例对象
     * @param u
     */
    Result updateSubjectBySubjectId(Subject subject, SysUser u);

    /**
     * 通过ID查询单条数据
     *
     * @param subjectId 主键
     */
    Result selectSubjectBySubjectId(Long subjectId);

    /**
     * 查询多条数据
     *
     * @param subject 实例对象
     * @param u
     */
    Result selectSubjectList(Subject subject, SysUser u);

    Result updateSubjectShowOrder(List<Long> subjectIds, SysUser u);

    Result refresh();

    Result refreshBySubjectId(Long subjectId);
}